/**
 * 小区详情对话框
 */
var VillageDlg = {
    VillageData: {},
    validateFields: {
        vil_name: {
            validators: {
                notEmpty: {
                    message: '名称不能为空'
                }
            }
        },
        area_code: {
            validators: {
                notEmpty: {
                    message: '所属地区不能为空'
                }
            }
        }
    }
};

/**
 * 清除数据
 */
VillageDlg.clearData = function () {
    this.VillageData = {};
};

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
VillageDlg.set = function (key, val) {
    this.VillageData[key] = (typeof value == "undefined") ? $("#" + key).val() : value;
    return this;
};

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
VillageDlg.get = function (key) {
    return $("#" + key).val();
};

/**
 * 关闭此对话框
 */
VillageDlg.close = function () {
    parent.layer.close(window.parent.Village.layerIndex);
};

/**
 * 收集数据
 */
VillageDlg.collectData = function () {
    this.set('id').set('area_code').set('vil_name');
};

/**
 * 验证数据是否为空
 */
VillageDlg.validate = function () {
    $('#VillageForm').data("bootstrapValidator").resetForm();
    $('#VillageForm').bootstrapValidator('validate');
    return $("#VillageForm").data('bootstrapValidator').isValid();
};

/**
 * 提交添加小区
 */
VillageDlg.addSubmit = function () {

    this.clearData();
    this.collectData();

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/village/add", function (data) {
        Feng.success("添加成功!");
        window.parent.Village.table.refresh();
        VillageDlg.close();
    }, function (data) {
        Feng.error("添加失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.VillageData);
    ajax.start();
};

/**
 * 提交修改
 */
VillageDlg.editSubmit = function () {

    this.clearData();
    this.collectData();

    if (!this.validate()) {
        return;
    }

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/village/edit", function (data) {
        Feng.success("修改成功!");
        if (window.parent.Village != undefined) {
            window.parent.Village.table.refresh();
            VillageDlg.close();
        }
    }, function (data) {
        Feng.error("修改失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.VillageData);
    ajax.start();
};

function onBodyDown(event) {
    if (!(event.target.id == "menuBtn" || event.target.id == "menuContent" || $(
            event.target).parents("#menuContent").length > 0)) {
        VillageDlg.hideVillageSelectTree();
    }
}

    function Bind(str) {
        alert($("#Province").html());
        $("#Province").val(str);
    }

    //获取省
    function ProviceBind() {
        //清空下拉数据
        $("#Province").html("");

        var str = "<option>==请选择===</option>";
        $.ajax({
            type: "GET",
            url: "/village/GetProvice",
            data: {
            },
            dataType:"json",
            async: false,
            success: function (data) {
                var jsonData = JSON.parse(data);
                //从服务器获取数据进行绑定
                for (var i = 0; i < jsonData.length; i++) {
                    str += "<option value=" + jsonData[i].province_id + ">" + jsonData[i].province_name + "</option>";
                }
                //将数据添加到省份这个下拉框里面
                $("#Province").append(str);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                                // 状态码
                                alert(XMLHttpRequest.status);
                                // 状态
                                alert(XMLHttpRequest.readyState);
                                // 错误信息
                                alert(textStatus);
             }
        });
    }
    //获取市
    function CityBind() {
        var provice = $("#Province").val();
        //判断省份这个下拉框选中的值是否为空
        if (provice == "") {
            return;
        }
        $("#City").html("");
        var str = "<option>==请选择===</option>";

        $.ajax({
            type: "POST",
            url: "/village/GetCity",
            data: { "parentiD": provice },
            dataType:"json",
            async: false,
            success: function (data) {
                var jsonData = JSON.parse(data);
                //从服务器获取数据进行绑定
                for (var i = 0; i < jsonData.length; i++) {
                    str += "<option value=" + jsonData[i].city_id + ">" + jsonData[i].city_name + "</option>";
                }
                //将数据添加到省份这个下拉框里面
                $("#City").append(str);
            },
            error: function () { alert("Error"); }
        });
    }

    //获取县
    function CountyBind() {
        var city = $("#City").val();
        //判断市这个下拉框选中的值是否为空
        if (city == "") {
            return;
        }
        $("#County").html("");
        var str = "<option>==请选择===</option>";
        //将市的ID拿到数据库进行查询，查询出他的下级进行绑定
        $.ajax({
            type: "POST",
            url: "/village/GetCounty",
            dataType:"json",
            data: { "parentiD": city },
            async: false,
            success: function (data) {
                var jsonData = JSON.parse(data);
                //从服务器获取数据进行绑定
                for (var i = 0; i < jsonData.length; i++) {
                    str += "<option value=" + jsonData[i].county_id + ">" + jsonData[i].county_name + "</option>";
                }
                //将数据添加到省份这个下拉框里面
                $("#County").append(str);
            },
            error: function () { alert("Error"); }
        });
    }

    //获取街道
    function StreetBind() {
            var county = $("#County").val();
            //判断市这个下拉框选中的值是否为空
            if (county == "") {
                return;
            }
            $("#area_code").html("");
            var str = "<option>==请选择===</option>";
            //将市的ID拿到数据库进行查询，查询出他的下级进行绑定
            $.ajax({
                type: "POST",
                url: "/village/GetStreet",
                dataType:"json",
                data: { "parentiD": county },
                async: false,
                success: function (data) {
                    var jsonData = JSON.parse(data);
                    //从服务器获取数据进行绑定
                    for (var i = 0; i < jsonData.length; i++) {
                        str += "<option value=" + jsonData[i].street_id + ">" + jsonData[i].street_name + "</option>";
                    }
                    //将数据添加到省份这个下拉框里面
                    $("#area_code").append(str);
                },
                error: function () { alert("Error"); }
            });
    }

$(function () {
    Feng.initValidator("VillageForm", VillageDlg.validateFields);

        //默认绑定省
        ProviceBind();
        //绑定事件
        $("#Province").change( function () {
            CityBind();
        })

        $("#City").change(function () {
            CountyBind();
        })

        $("#County").change(function () {
            StreetBind();
        })

});
